Communication assistance device, communication assistance method, and computer readable recording medium

ABSTRACT

A communication assistance device ( 10 ) includes a communication level determination unit ( 11 ) and a topic recommendation unit ( 16 ) so as to determine a level of a relationship between users who communicate with each other and provide communication assistance using the result of the determination. The communication level determination unit ( 11 ) determines the level (communication level) of the relationship between the users based on similarity between the users obtained from preference information showing preferences of the users, and on user action records showing records of actions taken by a certain user toward a partner user with whom the certain user communicates out of the users. The topic recommendation unit ( 16 ) selects, from among a group of topics prepared in advance, a topic that can be transmitted to the partner user based on the determined level of the relationship between the users and on preferences of the certain user and the partner user.

TECHNICAL FIELD

The present invention relates to a communication assistance device, acommunication assistance method, and a computer-readable recordingmedium having recorded therein a program for realizing the communicationassistance device and the communication assistance method.

BACKGROUND ART

In recent years, communication assistance systems have been proposed.Communication assistance systems assist development of humanrelationships based on how close hobbies and preferences of one personto those of another. For example, Non-Patent Document 1 discloses oneexample of conventional communication assistance systems.

The communication assistance system disclosed in Non-Patent Document 1aims to make two people acquainted with each other over time. Morespecifically, this communication assistance system first searches fortwo people with similar preferences and an agent who can mediate thesetwo people. Here, whether or not their preferences are similar isdetermined based on their life patterns in the past, e.g. whether or notthey have visited the same place.

This communication assistance system then judges whether or not thethree people who have been searched for are at the same place, and whenjudging that the three people are at the same place, urges the agent tomediate the two people with similar preferences.

In this way, the communication assistance system disclosed in Non-PatentDocument 1 provides an opportunity for the two people with similarpreferences to be introduced to each other via the agent. This makes iteasy for the two people who are introduced to each other to communicatewith each other, compared to the case where they have to initiateconversation with a stranger who shares similar interests.

Although the communication assistance system disclosed in Non-PatentDocument 1 aims to assist communication in a real space, it can likewiseassist communication in a virtual space such as a social networkingservice (SNS).

CITATION LIST Non-Patent Documents

Non-Patent Document 1:

Michael Terry et al. “Social Net: Using Patterns of Physical ProximityOver Time to Infer Shared Interests.” CHI '02: CHI '02 ExtendedAbstracts on Human Factors in Computing Systems (2002): 816-817.

DISCLOSURE OF THE INVENTION Problem to be Solved by the Invention

However, the communication assistance system disclosed in Non-PatentDocument 1 has the problem that it does not grasp human relationships ina stepwise manner and therefore cannot provide communication assistancein accordance with the levels of human relationships.

More specifically, the communication system disclosed in Non-PatentDocument 1 attempts to give two people a chance to communicate with eachother via an agent. At this time, the two people are suddenly introducedto and encouraged to befriend each other although they are strangers,i.e. they do not know each other at all. The two people may thus end upbeing unfamiliar with each other, with the result that theircommunication does not last long. The same goes for communication in avirtual space.

Level-based communication assistance can be provided as long as humanrelationships, such as strangers, strangers with similar preferences,people with similar preferences and interest in each other, and friends,can be grasped in a stepwise manner. That is to say, communicationassistance is required that takes into consideration the intermediatelevels between the level at which the two people are strangers and thelevel at which they become friends.

With consideration of such intermediate levels, the two people can getto know each other and cultivate a human relationship. Furthermore, inthis case, even if users move through different levels and end up havingsimilar preferences, they will not suddenly jump to the level at whichthey become friends, and accordingly a human relationship can bereliably cultivated. In view of the above, in a communication assistancesystem, it is important to determine communicational human relationshipsin a stepwise manner and provide level-based assistance.

One example of the aims of the present invention is to provide acommunication assistance device, a communication assistance method and acomputer-readable recording medium that can solve the above problem bydetermining a level of a relationship between users who communicate witheach other and providing communication assistance using the result ofthe determination.

Means for Solving the Problem

In order to achieve the above aim, a communication assistance deviceaccording to one aspect of the present invention includes: acommunication level determination unit that determines a level of arelationship between users based on similarity between the users and onuser action records, the similarity between the users being obtainedfrom preference information showing preferences of the users, and theuser action records showing records of actions taken by a certain usertoward a partner user with whom the certain user communicates out of theusers; and a topic recommendation unit that selects, from among a groupof topics that have been prepared in advance, a topic that can betransmitted to the partner user based on the level of the relationshipbetween the users determined by the communication level determinationunit and on preferences of the certain user and the partner user.

Furthermore, in order to achieve the above aim, a communicationassistance method according to one aspect of the present inventionincludes: a communication level determination step of determining alevel of a relationship between users based on similarity between theusers and on user action records, the similarity between the users beingobtained from preference information showing preferences of the users,and the user action records showing records of actions taken by acertain user toward a partner user with whom the certain usercommunicates out of the users; and a topic recommendation step ofselecting, from among a group of topics that have been prepared inadvance, a topic that can be transmitted to the partner user based onthe level of the relationship between the users determined in thecommunication level determination step and on preferences of the certainuser and the partner user.

Furthermore, in order to achieve the above aim, a computer-readablerecording medium according to one aspect of the present invention hasrecorded therein a program including instructions for causing a computerto execute: a communication level determination step of determining alevel of a relationship between users based on similarity between theusers and on user action records, the similarity between the users beingobtained from preference information showing preferences of the users,and the user action records showing records of actions taken by acertain user toward a partner user with whom the certain usercommunicates out of the users; and a topic recommendation step ofselecting, from among a group of topics that have been prepared inadvance, a topic that can be transmitted to the partner user based onthe level of the relationship between the users determined in thecommunication level determination step and on preferences of the certainuser and the partner user.

Effects of the Invention

As set forth above, a communication assistance device, a communicationassistance method and a computer-readable recording medium according tothe present invention can determine a level of a relationship betweenusers who communicate with each other and provide communicationassistance using the result of the determination.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing a configuration of a communicationassistance device according to Embodiment 1 of the present invention.

FIG. 2 is a flowchart showing the operations of the communicationassistance device according to Embodiment 1 of the present invention.

FIG. 3 shows examples of user action records accumulated in a useraction record accumulation unit.

FIG. 4 shows examples of preference similarities accumulated in apreference similarity accumulation unit.

FIG. 5 shows examples of communication levels accumulated in acommunication level accumulation unit.

FIG. 6 shows examples of communication levels obtained as a result ofupdating the communication levels shown in FIG. 5.

FIG. 7 shows examples of topics accumulated in a topic accumulationunit.

FIG. 8 shows examples of user models accumulated in a user modelaccumulation unit.

FIG. 9 shows examples of degrees of preference calculate by a topicrecommendation unit.

FIG. 10 shows an example of the output displayed on a display of aterminal device of a user.

FIG. 11 is a block diagram showing a configuration of a communicationassistance device according to Embodiment 2 of the present invention.

FIG. 12 shows examples of recommended action records accumulated in arecommended action record accumulation unit.

FIG. 13 is a flowchart showing the operations of the communicationassistance device according to Embodiment 2 of the present invention.

FIG. 14 is a block diagram showing an example of a computer thatrealizes the communication assistance devices according to Embodiment 1and Embodiment 2 of the present invention.

DESCRIPTION OF EMBODIMENTS Embodiment 1

The following describes a communication assistance device, acommunication assistance method and a program according to Embodiment 1of the present invention with reference to FIGS. 1 to 10. First, adescription is given of a configuration of the communication assistancedevice according to the present Embodiment 1 with reference to FIG. 1.FIG. 1 is a block diagram showing a configuration of the communicationassistance device according to Embodiment 1 of the present invention.

As shown in FIG. 1, a communication assistance device 10 according tothe present Embodiment 1 is connected to a service providing device 30.The service providing device 30 is a server device that providescommunication services such as blog services, Twitter, and socialnetworking services (SNS). The service providing device 30 is connectedto terminal devices 20 of users via a network 40 such as the Internet.In the present Embodiment 1, the communication assistance device 10assists communication in a communication space provided by the serviceproviding device 30 on the network.

As shown in FIG. 1, the communication assistance device 10 includes acommunication level determination unit 11 and a topic recommendationunit 16. The communication level determination unit 11 first obtainssimilarities between users, which are calculated from preferenceinformation showing preferences of the users (hereinafter referred to as“preference similarities”), as well as user action records showingrecords of actions taken by a certain user toward a partner user withwhom the certain user communicates out of the users. The communicationlevel determination unit 11 then determines a level of a relationshipbetween users (hereinafter referred to as “communication level”) basedon preference similarities between the users and the user action recordsof the users.

Based on the level of the relationship between the users determined bythe communication level determination unit 11 and on the preferences ofthe certain user and the partner user, the topic recommendation unit 16selects topics that can be transmitted to the partner user from among agroup of topics that have been prepared in advance.

In this manner, with the use of the communication level determinationunit 11, the communication assistance device 10 can determine a level ofa relationship between users who communicate with each other and providecommunication assistance in accordance with the determined level. Bythus providing level-based communication assistance, the relationshipbetween the users can be cultivated over time.

The following is a more specific description of the configuration of thecommunication assistance device 10. As shown in FIG. 1, thecommunication assistance device 10 according to the present Embodiment 1includes, in addition to the communication level determination unit 11and the topic recommendation unit 16, an input reception unit 12, acommunication level accumulation unit 13, a preference similarityaccumulation unit 14, a user action record accumulation unit 15, anoutput unit 18, a topic accumulation unit 18, and a user modelaccumulation unit 19. General operations of these units are as follows.

The input reception unit 12 receives, as the input, a user name from theservice providing device 30. In the present Embodiment 1, the serviceproviding device 30 inputs at least one user name of a user for whom acommunication level is to be determined (the aforementioned certainuser). When the user name is input, the communication leveldetermination unit 11 determines a communication level between the usercorresponding to the input user name (hereinafter referred to as “inputuser”) and another user with whom the input user communicates(hereinafter referred to as “partner user”), and accumulates thedetermined communication level in the communication level accumulationunit 13.

The preference similarity accumulation unit 14 accumulates preferencesimilarities between users as will be described later. User models,which will be described later with reference to FIG. 7, are one exampleof preference information used to calculate preference similarities.User models include keywords showing users' preferences. Alternatively,the preference information may be a list of information showinginformation in which the users are interested separately frominformation in which the users are not interested. The user actionrecord accumulation unit 15 accumulates user action records as will bedescribed later.

More specifically, the communication level determination unit 11 firstrefers to the user action records accumulated in the user action recordaccumulation unit 15 and obtains the types and frequencies of actionsthat the input user has taken toward a partner user. Based on the typesand frequencies of the actions, the communication level determinationunit 11 calculates a user interest degree which is a degree of interestthat the input user takes in the partner user. Furthermore, thecommunication level determination unit 11 refers to the preferencesimilarities between users accumulated in the preference similarityaccumulation unit 14 and obtains preference similarity indicating adegree of similarity between preferences of the input user andpreferences of the partner user.

Thereafter, the communication level determination unit 11 refers tocommunication levels that have been accumulated in the communicationlevel accumulation unit 13 up to the current time. Based on the obtainedpreference similarity and the calculated user interest degree, thecommunication level determination unit 11 judges whether therelationship between the input user and the partner user is in anadvancing state, a stalled state, or a receding state. The communicationlevel determination unit 11 then updates the communication level usingthe result of the judgment and accumulates the updated communicationlevel in the communication level accumulation unit 13.

Note that communication levels represent relationships between users,and users move through different communication levels in a stepwisemanner. Examples of communication levels include a stranger level, anintermediate level between strangers and friends, and a friend level.The intermediate level may be classified into a plurality of levels. Inthe present case, the following levels (A1) to (A4) may be used ascommunication levels.

(A1) Stranger level: the input user is not similar to the partner userin preferences and is not interested in the partner user.

(A2) Stranger level with similar preferences and no knowledge of name:the input user is similar to the partner user in preferences but is notinterested in the partner user.

(A3): Candidate-for-friend level with similar preferences: the inputuser is similar to the partner user in preferences and is interested inthe partner user.

(A4) Friend level: the input user and the partner user have similarpreferences and actively exchange information with each other.

Note that the aforementioned term “no knowledge of name” denotes thestate where the input user is aware of the existence of the partner userbut does not know the user name of the partner user.

Classification of communication levels may be even more specific. Forexample, the above level (A2), i.e. the stranger level with similarpreferences, and the above level (A3), i.e. the candidate-for-friendlevel with similar preferences, may each be classified into an existenceawareness level at which the input user is aware of the existence of thepartner user and an information exchange level at which the input userexchanges information with the partner user. In this case, the followinglevels (B1) to (B6) may be used as communication levels.

(B1) Stranger level: the input user is not similar to the partner userin preferences and is not interested in the partner user.

(B2) Existence awareness level at stranger level with similarpreferences and no knowledge of name: the input user is similar to thepartner user in preferences, is not interested in the partner user, andis aware of the existence of the partner user.

(B3) Information exchange level at stranger level with similarpreferences and no knowledge of name: the input user is similar to thepartner user in preferences, is not interested in the partner user, andexchanges information with the partner user.

(B4): Existence awareness level at candidate-for-friend level withsimilar preferences: the input user is similar to the partner user inpreferences, is interested in the partner user, and is aware of theexistence of the partner user.

(B5): Information exchange level at candidate-for-friend level withsimilar preferences: the input user is similar to the partner user inpreferences, is interested in the partner user, and exchangesinformation with the partner user.

(B6) Friend level: the input user and the partner user have similarpreferences and actively exchange information with each other.

In the present Embodiment 1, the preference similarity accumulation unit14 accumulates preference similarities between all users of the serviceprovided by the service providing device 30. The preference similaritiesare calculated based on similarity between preference information of oneuser and preference information of another user. In the presentembodiment, upon obtaining preference information of users, the serviceproviding device 30 outputs the obtained preference information to thepreference similarity accumulation unit 14. Then, based on the outputpreference information of users, the preference similarity accumulationunit 14 calculates preference similarities between the users andaccumulates the calculated preference similarities.

Note that preference information of a user denotes information showingwhat the user is interested in and curious about. Examples of thepreference information include a group of terms showing what the user isinterested in, a group of news articles about which the user is curious,and places where the user frequently visits.

The more similar preference information of one user is to preferenceinformation of another user, the larger value the calculated preferencesimilarity between the users has. For example, preference similaritybetween users can be obtained by generating term vectors based on groupsof terms in which the users are interested and calculating cosinesimilarity between the term vectors. In this case, the cosine similaritybetween the term vectors is used as the preference similarity betweenthe users. Alternatively, preference similarity between users may beobtained by generating news article vectors based on groups of newsarticles about which the users are curious and calculating cosinesimilarity between the news article vectors. In this case, the cosinesimilarity between the news article vectors is used as the preferencesimilarity between the users.

Furthermore, in the present Embodiment 1, the user action recordaccumulation unit 15 accumulates records of actions that a certain userhas taken toward another user, e.g. identifiers for identifying theactions and times when the actions were taken. Note that in the presentEmbodiment 1, actions denote operations performed by users via theterminal devices 20. In particular, actions include operations performedby a certain user with respect to another user, and operationsequivalent to responses with respect to operations performed by anotheruser.

More specifically, operations performed by a certain user with respectto another user include viewing of profile information, viewing ofdiaries, comments to diaries, transmission of messages, disclosure of aname, and the like. On the other hand, operations equivalent toresponses with respect to operations performed by another user includeviewing of transmitted messages, transmission of return messages, andthe like.

In the present Embodiment 1, the topic recommendation unit 16 receives,as the input, the user name input to the input reception unit 12. Basedon the received user name, the topic recommendation unit 16 refers tothe topics accumulated in the topic accumulation unit 18 and the usermodels accumulated in the user model accumulation unit 19, and searchesfor topics to be recommended to the input user and the partner user.

More specifically, based on the topics accumulated in the topicaccumulation unit 18 and the user models accumulated in the user modelaccumulation unit 19, the topic recommendation unit 16 first calculatesa degree of preference for each topic on a per-user basis.

Then, in order to provide communication assistance to users at variouscommunication levels (including both the input user and the partneruser), the topic recommendation unit 16 narrows the group of topicsaccumulated in the topic accumulation unit 18 down to topic candidatesthat can be transmitted to the partner user. For example, when thepartner user is at a friend level, the topic candidates are topics forwhich at least only the partner user exhibits a high degree ofpreference. When the partner user is at other levels, the topiccandidates are topics for which both the input user and the partner userexhibit a high degree of preference.

This is because when users are at a friend level, they know each otherwell, and therefore it is preferable to transmit a topic that fits atleast the preferences of a partner user to the partner user for viewingpurposes, even if the other user is not interested in that topic. On theother hand, when users are at other levels, their relationship is in themidst of cultivation, and therefore it is preferable to transmit a topicthat fits both the preferences of a partner user and the preferences ofthe other user to the partner user for viewing purposes.

Thereafter, the topic recommendation unit 16 determines whether topicsin which the partner user is interested out of the topic candidatesshould be recommended to the input user or to the partner user. Forexample, the topic recommendation unit 16 can select a user to whominformation can be easily transmitted in consideration of the speed oftransmission of information to users, namely the number of people towhom certain information can be transmitted per unit time.

More specifically, in this case, the topic recommendation unit 16 firstrefers to the communication levels accumulated in the communicationlevel accumulation unit 13 and the user action records accumulated inthe user action record accumulation unit 15. The topic recommendationunit 16 then identifies a user with a high user interest degree, or auser who has taken a large number of transmission actions (e.g. messagetransmissions) as user actions, and determines the identified user as arecommendation target.

Alternatively, in consideration of contribution to a partner user withwhom communication is performed, the topic recommendation unit 16 maydetermine a user who has made a small contribution to a partner user,namely a user with a low user interest degree, as the recommendationtarget. Note that “contribution to a partner user” denotes actions takentoward the partner user, and includes transmission of information to thepartner user, transmission of return comments to the partner user, andthe like. Contribution to a partner user represents actions necessary tomaintain a human relationship. More specifically, in the present case,the topic recommendation unit 16 refers to the communication levelsaccumulated in the communication level accumulation unit, identifies auser with a low user interest degree, and determines the identified useras the recommendation target.

Furthermore, the topic recommendation unit 16 may change the abovecriterion for determining a user to be the recommendation targetdepending on communication levels. For example, in the case of theexistence awareness level at the stranger level with similarpreferences, the topic recommendation unit 16 may determine a user witha low user interest degree as the recommendation target in considerationof contribution to a partner user. This is because the existenceawareness level is the state where the partner user is interested in thedetermined user and it is thus necessary for the determined user tovoluntarily transmit information to move to the next level, i.e. theinformation exchange level.

Lastly, when a large number of topics have been determined to berecommended to the input user out of the topic candidates, the topicrecommendation unit 16 adjusts the amount of topics to be recommended.For example, in the case where the aim of topic recommendation is tofurther advance an already-progressing communication level and form adeep human relationship, the topic recommendation unit 16 adopts a largenumber of topics for a partner user at a more advanced communicationlevel. On the other hand, in the case where the aim of topicrecommendation is to form broad human relationships with a large numberof people, the topic recommendation unit 16 adopts a large number oftopics for lower communication levels.

The topic accumulation unit 18 accumulates topics that serve as a mediumof communication as shown in FIG. 8 which will be described later. Theuser model accumulation unit 19 accumulates information showing users'preferences, namely user models, as shown in FIG. 7 which will bedescribed later.

In order to provide a user with topics to be recommended, the outputunit 17 outputs the topics to the service providing device 30. Theoutput unit 17 is not only capable of outputting the topics, but alsocapable of outputting an action for transmitting the output topics to acommunication partner. Furthermore, when outputting such an action, theoutput unit 17 can instruct the service providing device 30 not todisplay the user name of the communication partner depending oncommunication levels.

More specifically, at a level closer to the stranger level than to thestranger level with similar preferences and no knowledge of name, i.e.the intermediate level, the output unit 17 instructs the serviceproviding device 30 not to display the user name of the communicationpartner. In this case, the output unit 17 may request the serviceproviding device 30 to display information that substitutes the username of the communication partner. For example, in the case where a userto whom topics are provided can read user models, the above informationmay be information with the largest weight out of all pieces ofpreference information of a partner user. Alternatively, the aboveinformation may be a keyword that has been determined to have thelargest weight through analysis of topic information, or a keyword forwhich the largest weight has been calculated from topics and a usermodel of a partner user.

A description is now given of the operations of the communicationassistance device 10 according to Embodiment 1 of the present inventionwith reference to FIG. 2. FIG. 2 is a flowchart showing the operationsof the communication assistance device according to Embodiment 1 of thepresent invention. In the following description, FIG. 1 shall bereferred to where appropriate. Note that in the present Embodiment 1, acommunication assistance method is implemented by causing thecommunication assistance device 10 to operate. Therefore, the followingdescription of the operations of the communication assistance device 10applies to the communication assistance method according to the presentEmbodiment 1.

First, as shown in FIG. 2, the input reception unit 12 of thecommunication assistance device 10 receives, as the input from theservice providing device 30, a user name of a user for whom acommunication level is to be determined (step S1).

For example, in the case where the service providing device 30 inputs auser name of user A, the input reception unit 12 considers user A as aninput user. Note that this is merely an example. Alternatively, in orderto determine a communication level between a certain user and his/herpartner user, the input reception unit 12 may receive a user name of thecertain user and a user name of the partner user in a pair.

Next, the communication level determination unit 11 refers to the useraction records accumulated in the user action record accumulation unit15 and obtains user action records corresponding to the user name of theinput user (step S2).

The following describes examples of the user action records accumulatedin the user action record accumulation unit 15 with reference to FIG. 3.FIG. 3 shows examples of the user action records accumulated in the useraction record accumulation unit.

As shown in FIG. 3, a user action record is composed of a user, his/herpartner user, an action, and time. In the examples of FIG. 3, the useraction records are presented in the form of a table. In FIG. 3, “user”denotes a user who took an action, and “partner user” denotes a partneruser toward whom the action was taken. Also, in FIG. 3, “action” denotesan operation performed and a response made by the user, and “time”denotes time when the action was taken. Note that “ . . . ” in FIG. 3denotes omission.

For example, in FIG. 3, the second row of the table indicates that userA (user name: A) viewed a diary of user B (user name: B) on Jul. 15,2010 at 18:20. In the case where the input reception unit 12 receivesthe user name of user A as the input, the communication leveldetermination unit 11 obtains the second, third, fourth and fifth rowsof the table.

Thereafter, the communication level determination unit 11 calculatesuser interest degrees which are degrees of an interest that the inputuser takes in partner users (step S3). In step S3, the communicationlevel determination unit 11 calculates the user interest degrees basedon the types of the actions that the input user took toward the partnerusers, the number of times the actions were taken, and the times whenthe actions were taken. The more the input user is interested in thepartner users, the larger value the calculated user interest degreeshave.

For example, provided that a user interest degree of the input user withrespect to a partner user is expressed as “C (input user, partneruser)”, the communication level determination unit 11 can calculate auser interest degree using the following Expression 1.

C(input user,partner user)=AT(input user,partner user)/ATv  (Expression1)

In the above Expression 1, “AT (input user, partner user)” denotes thenumber of times weighted actions were taken in a predetermined timeperiod, that is, the number of times the input user took weightedactions toward a partner user in a predetermined time period. Note that“AT (input user, partner user)” can be calculated using the followingExpression 2.

Also, in the above Expression 1, “ATv” denotes the average of thenumbers of times the weighted actions were taken toward all users in thepredetermined time period. In other words, “ATv” can be obtained bycalculating the numbers of times the weighted actions were taken towardall users and calculating the average thereof.

AT(input user,partner user)=Σ(α(action type)×T(input user,partneruser,action type))  (Expression 2)

In the above Expression 2, “α(action type)” denotes a weight for eachaction type. Also, “T (input user, partner user, action type)” denotesthe number of times the input user took actions of that action typetoward a partner user in the predetermined time period.

Therefore, the user interest degree expressed by the above Expression 1is equivalent to a ratio between the total number of times the inputuser took weighted actions toward a partner user in a predetermined timeperiod and the average of the numbers of times actions were taken towardall partner users in the predetermined time period.

Also, “α(action type)” in the above Expression 2 is set for each actiontype. The higher the level of an action as a means of communicationbetween users, the larger the weight for that action. For example,comparing the viewing of profile information with message transmission,the viewing of profile information is nothing but a simple act ofviewing, while message transmission requires contacting a partner user.Therefore, a larger weight is given to the former. More specifically,three is set as the weight for message transmission, and one is set asthe weight for profile viewing.

In the case of the examples of FIG. 3, T (input user, partner user,action type) in the above Expression 2 is T (user A, user B, messagetransmission)=1.

In the above Expressions 1 and 2, the “predetermined time period”denotes a time period that has been set in advance for determining acommunication level.

The “predetermined time period” may be, for example, two days.Furthermore, the “predetermined time period” may be fixed in thecommunication assistance device 10, or may be a time period from when acommunication level was previously determined to the current time.

Note that the user interest degree calculated using the aboveExpressions 1 and 2 in the present Embodiment 1 is one example. In thepresent Embodiment 1, a user interest degree may be calculated inconsideration of ease in communication with users.

For example, a user interest degree may be calculated by dividing thenumber of times the input user took actions toward a partner user in apredetermined time period by the number times the input user tookactions toward all partner users over an entire time period.Alternatively, the user interest degree calculated using any of theaforementioned methods may be divided by the number of times the inputuser took weighted actions toward all partner users over an entire timeperiod, and the value obtained through this division may be used as theuser interest degree.

In the case where the user interest degrees are calculated in the abovemanner, if more actions are taken toward a user with whom communicationcan be easily conducted than other users, the user interest degreecalculated with respect to that user has a large value. On the otherhand, the user interest degree calculated with respect to a user withwhom communication cannot be easily conducted has a large value even iffewer actions are taken toward that user.

Furthermore, a time-based weight may be applied to calculation of theuser interest degrees. For example, when a long predetermined timeperiod is set, a weight may be adjusted depending on the time when eachaction was taken. More specifically, a small weight may be applied toold actions, and a large weight may be applied to recent actions.Furthermore, a weight for each action may be changed in accordance witha current communication level.

The following describes the case where user interest degrees C. arecalculated for the examples of FIG. 3 using the above Expressions 1 and2. Provided that users A and B are the input user and the partner user,respectively, a user interest degree can be calculated using thefollowing Expression 3.

C(user A,user B)={α(diary viewing)×T(user A,user B,diaryviewing)+α(message transmission)×T(user A,user B,messagetransmission)}/ATv  (Expression 3)

Provided that α(profile viewing)=1, α(diary viewing)=2, and α(messagetransmission)=3, the above Expression 3 is substituted with thefollowing Expression 4.

C(user A,user B)=(2×1+3×1)/ATv  (Expression 4)

ATv (the average of the numbers of times weighted actions were takentoward all users in a predetermined time period) is calculated asfollows. It is assumed that users A, B and C compose all users. Thefollowing Expressions 5 through 10 show AT (input user, partner user)for the cases where different users act as the input users.

AT(user A,user B)=(2×1+3×1)=5  (Expression 5)

AT(user A,user C)=1×1=1  (Expression 6)

AT(user B,user A)=0  (Expression 7)

AT(user B,user C)=0  (Expression 8)

AT(user C,user A)=1×1=1  (Expression 9)

AT(user C,user B)=0  (Expression 10)

Based on the values obtained from the above Expressions 5 through 10,ATv can be calculated as shown in the following Expression 11, and C(user A, user B) can be calculated as shown in the following Expression12.

ATv=(5+1+0+0+1+0)/6=7/6=approximately 1.0  (Expression 11)

C(user A,user B)=(2×1+3×1)/1.0=5.0  (Expression 12)

Similarly, provided that users A and C are the input user and thepartner user, respectively, a user interest degree C. (user A, user C)can be calculated using the following Expression 13.

C(user A,user C)={α(profile viewing)×T(user A,user B,profileviewing)}/ATv=(1×1)/1.0=1.0  (Expression 13)

Furthermore, provided that users B and A are the input user and thepartner user, respectively, similar calculation leads to a user interestdegree C. (user B, user A)=0. Furthermore, provided that users C and Aare the input user and the partner user, respectively, similarcalculation leads to a user interest degree C. (user C, user A)=1.0.

It is apparent from the above examples that a user interest degree tendsto be higher when a higher-level communication means such as messagetransmission has been implemented, and also when actions have been takena larger number of times.

Next, the communication level determination unit 11 refers to preferencesimilarities between users accumulated in the preference similarityaccumulation unit 14, and obtains preference similarities between theinput user and all other users (step S4).

The following describes examples of the preference similaritiesaccumulated in the preference similarity accumulation unit 14 withreference to FIG. 4. FIG. 4 shows examples of the preferencesimilarities accumulated in the preference similarity accumulation unit.As shown in FIG. 4, preference similarity is composed of user 1, user 2,and preference similarity.

In the examples of FIG. 4, the preference similarities are presented inthe form of a table. The preference similarities shown in FIG. 4 aresimilarities calculated based on preference information of users. Themore similar the preferences of one user to the preferences of anotheruser, the larger the value of the preference similarity between theusers. For example, in FIG. 4, the first record (the first row)indicates that the preference similarity between user A and user B is0.5.

For example, provided that user A is the input user, the preferencesimilarity accumulation unit 14 obtains the first record and the secondrecord (the first row and the second row). Note that in the presentEmbodiment 1, the obtainment of the preference similarities in step S4may be performed in parallel with or prior to the calculation of theuser interest degrees in step S3.

Thereafter, the communication level determination unit 11 determines acommunication level based on the user interest degrees calculated instep S3 and the preference similarities obtained in step S4 (step S5).In the present Embodiment 1, the communication level determination unit11 determines a communication level by judging whether the currentcommunication level is in an advancing state, a stalled state, or areceding state.

More specifically, the communication level determination unit 11 refersto the communication levels accumulated in the communication levelaccumulation unit 13 and obtains a current communication level.

Examples of the communication levels accumulated in the communicationlevel accumulation unit 13 are described below with reference to FIG. 5.FIG. 5 shows examples of the communication levels accumulated in thecommunication level accumulation unit. As shown in FIG. 5, thecommunication level accumulation unit 13 accumulates communicationlevels between two users (corresponding to user 1 and user 2 in FIG. 5)in association with the preference similarities and the user interestdegrees used for determining the communication levels.

As stated earlier, communication levels represent relationships betweenusers, and users move through different communication levels in astepwise manner. Examples of the communication levels include (A1) to(A4) described above.

In step S5, the communication level determination unit 11 can judgewhether the communication level is in the advancing state, the stalledstate or the receding state in the following manner using the userinterest degrees and the preference similarities between users.

For example, the communication level determination unit 11 judges thatthe communication level is in the advancing state when the preferencesimilarity is equal to or greater than a first predetermined value settherefor and the user interest degree is equal to or greater than afirst predetermined value set therefor. On the other hand, thecommunication level determination unit 11 judges that the communicationlevel is in the receding state when the preference similarity betweenusers is equal to or smaller than a second predetermined value settherefor or when the user interest degree is equal to or smaller than asecond predetermined value set therefor. Furthermore, the communicationlevel determination unit 11 judges that the communication level is inthe stalled state when the communication level is neither in theadvancing state nor in the receding state.

A communication level between user A and user B is discussed below. Inthe pre-update state shown in FIG. 5, the preference similarity betweenuser A and user B is 0.5, the user interest degree (user B, user A) is0, and the user interest degree (user A, user B) is 2. After the update,the user interest degree (user A, user B) is increased to 7 as shown inFIG. 6 which will be described later.

It is assumed that a communication level is in the advancing state whenthe preference similarity between users is equal to or greater than 0.5and the user interest degrees of both users are equal to or greaterthan 1. It is also assumed that a communication level is in the recedingstate when the preference similarity between users is equal to orsmaller than 0.2 and the user interest degree of one of the users isequal to or smaller than 1. It is also assumed that a communicationlevel is in the stalled state in cases other than the above. In view ofthe above, in the post-update state, a communication level between userA and user B is judged to be in the stalled state. That is to say, thecommunication level between user A and user B does not progress from thecurrent level, namely the candidate-for-friend level with similarpreferences.

A communication level between user A and user C is discussed below. Inthe pre-update state shown in FIG. 5, the preference similarity betweenuser A and user C is 0.2, the user interest degree (user A, user C) is0, and the user interest degree (user C, user A) is 0. After the update,the preference similarity between user A and user C is increased to 0.7,the user interest degree (user A, user C) is increased to 1, and theuser interest degree (user C, user A) is increased to 1 as shown in FIG.6 which will be described later. In this case, in the post-update state,the communication level between user A and user C is judged to be in theadvancing state.

As set forth above, in the present Embodiment 1, even if there is aclose similarity between users, the users are first judged to be at anintermediate level instead of suddenly being judged to be at a friendlevel. Therefore, the relationship between the users can be cultivated.

The judgment as to whether a communication level is in the advancingstate, the stalled state or the receding state may vary depending oncommunication levels. For example, assume that the communication levelsare more specifically classified into (B1) to (B6) described above. Inthis case, provided that a current communication level is a strangerlevel, the judgment may be made as follows.

When the preference similarity between users is equal to or greater thana first predetermined value set therefor and a user interest degree ofone of the users is equal to or greater than a first predetermined valueset therefor, the communication level is judged to be in the advancingstate. When the preference similarity between users is equal to orsmaller than a second predetermined value set therefor or when a userinterest degree of one of the users is equal to or smaller than a secondpredetermined value set therefor, the communication level is judged tobe in the receding state. In cases other than the above, thecommunication level is judged to be in the stalled state.

When the communication levels are specifically classified, it ispreferable that users move to the next level (the existence awarenesslevel at the stranger level) if one user is interested in the other inthe above manner.

On the other hand, when the current communication level is the existenceawareness level at the stranger level, it is preferable to judge thatthe communication level is in the advancing state when the preferencesimilarity between users is equal to or greater than a predeterminedvalue set therefor and the user interest degrees of both users are equalto or greater than a predetermined value set therefor. In this way, whenboth users are interested in each other and exchange information by anymeans, they can move to the next level, namely the information exchangelevel at the stranger level.

Once step S5 has been executed in the above manner, the communicationlevel determination unit 11 updates the determined communication levelas well as the corresponding preference similarity between users and thecorresponding user interest degree in the communication levelaccumulation unit 13 as shown in FIG. 6. FIG. 6 shows examples of thecommunication levels obtained as a result of updating the communicationlevels shown in FIG. 5. As can be seen from comparison between FIG. 5and FIG. 6, the result of the determination, as well as the preferencesimilarity between users and the user interest degree used for thedetermination, are updated with respect to user A.

Thereafter, the topic recommendation unit 16 calculates a degree ofpreference for each topic on a per-user basis based on the topicsaccumulated in the topic accumulation unit 18 and the user modelsaccumulated in the user model accumulation unit 19 (step S6). Note thata degree of preference denotes a degree at which a user likes a topic.The larger the value of the degree of preference is, the more the topicmatches the user's preferences. The following describes specificexamples of the topics accumulated in the topic accumulation unit 18 andthe user models accumulated in the user model accumulation unit 19.

FIG. 7 shows examples of the topics accumulated in the topicaccumulation unit. As shown in FIG. 7, the topic accumulation unit 18manages each topic in association with a topic ID assigned thereto andthe content thereof. In FIG. 7, a group of accumulated topics ispresented in the form of a table, and “ . . . ” denotes omission.

FIG. 8 shows examples of the user models accumulated in the user modelaccumulation unit. As shown in FIG. 8, the user model accumulation unit19 accumulates user models in one-to-one correspondence with users. Theuser models are information showing the preferences of the users. In thepresent Embodiment 1, the user models are information similar topreference information used to calculate the preference similarities.Here, a user model includes keywords showing the preferences of a userand weights therefor, and is expressed in the form of “keyword: weight”.A plurality of keyword-weight pairs are linked together with “,” betweenany two given pairs.

In step S6, a known method may be used to calculate a degree ofpreference. For example, the topic recommendation unit 16 first refersto the user models accumulated in the user model accumulation unit 19and generates a keyword vector of each user model. The topicrecommendation unit 16 then performs language analysis on the topicsaccumulated in the topic accumulation unit 18 and generates a topickeyword vector from the result of the analysis. Thereafter, the topicrecommendation unit 16 calculates cosine similarity between the keywordvector of each user model and the topic keyword vector as a degree ofpreference. At this time, the topic recommendation unit 16 calculatesthe degrees of preference for all pairs of user and topic.

FIG. 9 shows an example of the result of calculation of the degrees ofpreference. Note that FIG. 9 shows examples of the degrees of preferencecalculated by the topic recommendation unit. As shown in FIG. 9, adegree of preference for each topic is calculated on a per-user basis.In the example of FIG. 9, the degrees of preference are presented in theform of a table.

Next, the topic recommendation unit 16 narrows the topics down to topiccandidates that can be transmitted to a partner user (step S7). Asstated earlier, in step S7, the topic recommendation unit 16 selectstopic candidates as follows. When a partner user is at a friend level,the topic recommendation unit 16 selects topics for which at least onlythe partner user exhibits a high degree of preference as topiccandidates. When a partner user is at other levels, the topicrecommendation unit 16 selects topics for which both the input user andthe partner user exhibit a high degree of preference as topiccandidates.

For example, assume that the communication levels accumulated in thecommunication level accumulation unit 13 are in the state shown in FIG.6. In this case, provided that user A is the input user, the topicrecommendation unit 16 selects topics for which both user A and user Bexhibit a high degree of preference as topic candidates because user Aand user B are not at a friend level. Note that in the presentEmbodiment 1, a threshold for a degree of preference serving as a basisfor selection is set by the communication assistance device 10 inadvance.

For example, provided that a threshold for a degree of preference is setto 0.5, topic 1 and topic 2 are selected as topic candidates from amongthe result of the calculation shown in FIG. 9. Similarly, the topicrecommendation unit 16 selects topic 1 for which both user A and user Cexhibit a high degree of preference because user A and user C are not ata friend level, either. As a result, the topics are narrowed down to“topic 1 (user B, user C)” and “topic 2 (user B)”. The result ofnarrowing down the topics in the above manner includes the resultanttopics and corresponding users. That is to say, the result of narrowingdown the topics shows that topic 1 is for user B and user C who arepartner users of the user A.

Regarding topics in which a partner user is interested out of the topiccandidates, the topic recommendation unit 16 determines a user to whomthese topics are to be recommended as a recommendation target (step S8).For example, in the present example, it is assumed that the topicrecommendation unit 16 determines a user to whom information can beeasily transmitted as a recommendation target in consideration of thespeed of information transmission (information transmissibility). Inthis case, the topic recommendation unit 16 refers to the communicationlevels accumulated in the communication level accumulation unit 13 andthe user action records accumulated in the user action recordaccumulation unit 15. The topic recommendation unit 16 then determines auser with a high user interest degree, or a user who has taken a largenumber of transmission actions (e.g. message transmissions) as useractions, as a recommendation target.

For example, regarding topic 1, it is necessary to compare user A withuser B and compare user A with user C. Referring to FIG. 6, the userinterest degree (user A, user B) is the highest. That is to say, user Ahas the highest user interest degree. Therefore, as to topic 1, user Ais determined as the recommendation target. On the other hand, regardingtopic 2, it is necessary to compare user A with user B. Referring toFIG. 6, the user interest degree (user A, user B) is the highest.Therefore, as to topic 2 also, user A is determined as therecommendation target.

When a large number of topics have been determined to be recommended tothe input user out of the topic candidates, the topic recommendationunit 16 adjusts the amount of topics to be recommended (step S9). In thepresent example, it is assumed that the aim of the service providingdevice 30 is to form broad human relationships with a large number ofpeople. In this case, the topic recommendation unit 16 adjusts theamount of topics to be recommended so that a larger number of topics areprepared for lower communication levels. More specifically, an upperlimit is set for the number of topics for each level, so that a largernumber of topics are adopted for lower communication levels. Topics areselected in order from a topic for which the input user or the partneruser exhibits the highest degree of preference.

For example, assume that three is set as an upper limit for the numberof topics for a low communication level, namely a stranger level, two isset as an upper limit for the number of topics for a stranger level withsimilar preferences and no knowledge of name, one is set as an upperlimit for the number of topics for the next level, namely acandidate-for-friend level with similar preferences, and one is set asan upper limit for the number of topics for a candidate-for friendlevel. In this case, in the present example, topic 1 applies to both thecandidate-for-friend level with similar preferences (user A, user B) andthe stranger level with similar preferences and no knowledge of name(user A, user C). Therefore, topic 1 may be considered to apply toeither one of these levels. On the other hand, topic 2 applies to thecandidate-for-friend level with similar preferences (user A, user B). Asthe conditions regarding the aforementioned upper limits are satisfied,topic 1 and topic 2 are both adopted.

Thereafter, in order to provide a user with topics to be recommended,the output unit 17 outputs the topics to the service providing device 30(step S10). In the above example, “topic 1 (user B, user C)” and “topic2 (user B)” are output in step S10. Here, parentheses show partner usersof a user who has been determined as a recommendation target. In thiscase, the service providing device 30 causes a display of the terminaldevice 20 of the user who has been determined as the recommendationtarget to display the topics and the user names of the partner users.

When outputting topics, the output unit 17 can also instruct the serviceproviding device 30 to recommend an action for transmitting the outputtopics to the partner users. At this time, when a communication levelbetween the recommendation target to whom the topics are output andhis/her partner user is closer to the stranger level than to thestranger level with similar preferences and no knowledge of name, theoutput unit 17 instructs the service providing device 30 not to displaythe user name of the partner user.

The following describes an example of the output displayed on thedisplay of the terminal device 20 of a user with reference to FIG. 10.FIG. 10 shows an example of the output displayed on the display of theterminal device of a user. Topic 1 (see FIG. 7) includes user C at astranger level with similar preferences and no knowledge of name.Therefore, the user name of user C is not disclosed on the display ofthe terminal device of user A as shown in FIG. 10. Instead, user C isdisplayed as “someone who is interested in and wants to know aboutmobile telephones”. Note that the keyword “mobile telephones” is adoptedbecause it is included in both the user model of user C and the contentof topic 1.

As set forth above, the operations of the communication assistancedevice 10 allow determining a level (communication level) of arelationship between users based on similarities between preferencepatterns of the users and records of actions taken by a user to otherusers. In accordance with the determined communication level, thecommunication assistance device 10 can identify topics to be recommendedto users. That is to say, the communication assistance device 10 canprovide communication assistance in accordance with the determinedcommunication level.

When users are at a stranger level with similar preferences and noknowledge of name, the communication assistance device 10 can instructthe service providing device 30 not to disclose the names of the users.If the communication level progresses to a candidate-for-friend level,the communication assistance device 10 allows the service providingdevice 30 to disclose the names of the users. Through the aboveprocessing, users can communication with one another while overcomingpsychological obstacles over time.

Furthermore, with the communication assistance device 10 recommendingthe identified topics to users, the users are given a chance tocommunicate with other users. As a result, communication is facilitated.

It suffices for a program according to the present Embodiment 1 to causea computer to execute steps S1 to S10 shown in FIG. 2. The communicationassistance device 10 and the communication assistance method accordingto the present Embodiment 1 can be realized by installing and executingthis program on the computer. In this case, a central processing unit(CPU) of the computer functions as the input reception unit 12, thecommunication level determination unit 11, the topic recommendation unit16 and the output unit 17 and executes processing thereof.

The preference similarity accumulation unit 14 is realized by the CPUand a storage device, such as a hard disk, provided in the computer.Furthermore, the communication level accumulation unit 13, the useraction record accumulation unit 15, the topic accumulation unit 18 andthe user model accumulation unit 19 are realized by the storage device.

Embodiment 2

The following describes a communication assistance device, acommunication assistance method and a program according to Embodiment 2of the present invention with reference to FIGS. 11 to 13. First, adescription is given of a configuration of the communication assistancedevice according to the present Embodiment 2 with reference to FIG. 11.FIG. 11 is a block diagram showing a configuration of the communicationassistance device according to Embodiment 2 of the present invention.

As shown in FIG. 11, a communication assistance device 50 according tothe present Embodiment 2 differs from the communication assistancedevice 10 according to Embodiment 1 as follows. The communicationassistance device 50 according to the present Embodiment 2 includes acommunication level determination unit 51 instead of the communicationlevel determination unit 11, and additionally includes a recommendedaction record accumulation unit 52. The following description isprovided mainly with a focus on differences from Embodiment 1.

In the present Embodiment 2, the service providing device 30 has afunction of recommending actions to users unlike Embodiment 1. The userscan take the recommended actions where necessary via the terminaldevices 20.

The communication level determination unit 51 receives a user name asthe input, determines a communication level between an input user and apartner user, and accumulates the determined communication level in thecommunication level accumulation unit 13. At this time, thecommunication level determination unit 51 accesses the recommendedaction record accumulation unit 52.

More specifically, the communication level determination unit 51 firstrefers to the user action records accumulated in the user action recordaccumulation unit 15 and the recommended action records accumulated inthe recommended action record accumulation unit 52. Next, thecommunication level determination unit 51 obtains the types andfrequencies of actions that the input user took toward partner users, aswell as the types and frequencies of actions that were recommended bythe service providing device 30 to users. Based on the obtained typesand frequencies of actions, the communication level determination unit51 calculates user interest degrees which are degrees of an interestthat the input user takes in the partner users.

In the present Embodiment 2, the recommended action record accumulationunit 52 accumulates records of actions that the service providing device30 recommended to users. Examples of the actions that the serviceproviding device 30 recommends to users include actions that areexpected to be taken by the users to assist communication.

The following describes an example of a method used by the serviceproviding device 30 to recommend actions to users. For example, when auser calls a certain operation, the service providing device 30 receivesthe called operation as the input, identifies the next actioncorresponding to the input, and recommends the identified action.

More specifically, when user A calls an operation for viewing a diary ofuser B, the service providing device 30 recommends, to user A, an actionfor writing a comment to the diary of user B. When user A calls anoperation for storing information about which user B is significantlycurious, the service providing device 30 recommends, to user A, anaction for transmitting that information to user B.

FIG. 12 shows examples of the recommended action records accumulated inthe recommended action record accumulation unit 52. Note that FIG. 12shows examples of the recommended action records accumulated in therecommended action record accumulation unit.

As shown in FIG. 12, the recommended action record accumulation unit 52accumulates a user, a partner user, a recommended action, and the timewhen the recommended action was taken as a recommended action record. InFIG. 12, the recommended action records are presented in the form of atable. For example, the second row of the table shown in FIG. 12indicates that transmission of a message to user A was recommended touser B on Jul. 15, 2010 at 18:10. Note that “ . . . ” in FIG. 12 denotesomission.

A description is now given of the operations of the communicationassistance device 50 according to Embodiment 2 of the present inventionwith reference to FIG. 13. FIG. 13 is a flowchart showing the operationsof the communication assistance device according to Embodiment 2 of thepresent invention. In the following description, FIGS. 11 and 12 shallbe referred to where appropriate. Note that in the present Embodiment 2,a communication assistance method is implemented by causing thecommunication assistance device 50 to operate. Therefore, the followingdescription of the operations of the communication assistance device 50applies to the communication assistance method according to the presentEmbodiment 2.

As shown in FIG. 13, the present Embodiment 2 largely differs fromEmbodiment 1 in that a step of obtaining the recommended action recordsis newly added and that the detail of a step of calculating userinterest degrees has been changed. A specific description is providedbelow.

First, steps S11 and S12 are executed. Steps S11 and S12 are similar tosteps S1 and S2 in FIG. 2, respectively.

Next, the communication level determination unit 51 refers to therecommended action records accumulated in the recommended action recordaccumulation unit 52, and obtains recommended action recordscorresponding to the user name input in step S11 (step S13).

For example, provided that user A is the input user, the communicationlevel determination unit 51 obtains recommended action recordscorresponding to user A, namely recommended actions of the second,third, fourth and fifth rows (see FIG. 12). Note that step S13 may beexecuted in parallel with the obtainment of the user action records instep S12.

Thereafter, the communication level determination unit 51 calculatesuser interest degrees of the input user toward partner users (step S14).In the present Embodiment 2, the communication level determination unit51 calculates the user interest degrees in step S14 using therecommended action records in addition to the types of actions that theinput user took toward the partner users, the number of times theactions were taken, and the times when the actions were taken. In thepresent Embodiment 2 also, the more the input user is interested inpartner users, the larger value the calculated user interest degreeshave.

For example, in the present Embodiment 2, provided that a user interestdegree of the input user with respect to a partner user is expressed as“C (input user, partner user)”, the communication level determinationunit 51 can calculate the user interest degree using the followingExpression 14.

C(input user,partner user)=AT(input user,partner user)/ATv+RT(inputuser,partner user)/RTv  (Expression 14)

In the above Expression 14, “AT (input user, partner user)” denotes thenumber of times the input user took weighted actions toward a partneruser in a predetermined time period as with Expression 1. Note that “AT(input user, partner user)” can be calculated using the above Expression2. Furthermore, “ATv” denotes the average of the numbers of timesweighted actions were taken toward all users in a predetermined timeperiod as with Expression 1.

On the other hand, in the above Expression 14, “RT (input user, partneruser)” denotes the number of times weighted recommended actions weretaken in a predetermined time period, namely the number of times theinput user took weighted recommended actions toward a partner user in apredetermined time period. Note that “RT (input user, partner user)” canbe calculated using the following Expression 15. Furthermore, “RTv”denotes the average of the numbers of times the weighted recommendedactions were taken toward all users in a predetermined time period, thatis, the average of the results of calculating the numbers of times theweighted recommended actions were taken toward all users.

RT(input user,partner user)=Σ(α(action type)×Tr(input user,partneruser,action type))  (Expression 15)

In the above Expression 15, “α(action type)” denotes a weight for eachaction type as with “α(action type)” in the above Expression 2.Furthermore, “Tr (input user, partner user, action type)”, which can becalculated by comparing the recommended action records with the useraction records, denotes the number of times the input user tookrecommended actions of that action type in a predetermined time period.

Therefore, as can be understood from the above Expressions 14 and 15, auser interest degree according to the present Embodiment 2 can beobtained by adding a ratio between the number of times the input usertook actions toward a partner user in a predetermined time period andthe corresponding average, and a ratio between the number of times theinput user actually took recommended actions out of the actionsrecommended by the service providing device 30 and the correspondingaverage. Therefore, a user interest degree serves as the index showingto what extent actions were taken toward an average user and to whatextent a user took recommended actions.

For example, assume the case where user interest degrees are calculatedbased on the recommended action records shown in FIG. 12 and the useraction records shown in FIG. 3. First, referring to FIG. 3, users tookthe recommended actions of the third, fourth and fifth rows out of therecommended actions shown in FIG. 12 (the second, third, fourth andfifth rows). Therefore, RT (input user, partner user) can be calculatedas shown in the following Expressions 16 to 18.

RT(user A,user B,message transmission)=1  (Expression 16)

RT(user A,user C,profile viewing)=1  (Expression 17)

RT(user C,user A,profile viewing)=1  (Expression 18)

Based on the examples of FIGS. 3 and 12, C (user A, user B) can beobtained using the following Expression 19.

C(user A,user B)={(α(diary viewing)×T(user A,user B,diaryviewing)+α(message transmission)×T(user A,user B,messagetransmission))}/ATv+{α(message transmission)×Tr(user A,user B,messagetransmission)}/RTv  (Expression 19)

Provided that α(profile viewing)=1, α(diary viewing)=2, and α(messagetransmission)=3, the above Expression 19 is substituted with thefollowing Expression 20 based on the results of the above Expressions16, 3 and 4.

C(user A,user B)=(2×1+3×1)/ATv+(3×1)/RTv  (Expression 20)

RTv (the average of the numbers of times the weighted recommendedactions were taken toward all users in a predetermined time period) iscalculated as follows. It is assumed that users A, B and C compose allusers. The following Expressions 21 through 26 show RT (input user,partner user) for the cases where different users act as the inputusers.

RT(user A,user B)=3×1=3  (Expression 21)

RT(user A,user C)=1×1=1  (Expression 22)

RT(user B,user A)=0  (Expression 23)

RT(user B,user C)=0  (Expression 24)

RT(user C,user A)=1×1=1  (Expression 25)

RT(user C,user B)=0  (Expression 26)

Based on the values obtained from the above Expressions 21 through 26,RTv can be calculated as shown in the following Expression 27, and C(user A, user B) can be calculated as shown in the following Expression28 using the result of the above Expression 11.

RTv=(3+1+0+0+1+0)/6=5/6=approximately 0.83  (Expression 27)

C(user A,user B)=(2×1+3×1)/1.0+(3×1)/0.83=8.6  (Expression 28)

Similarly, provided that users A and C are the input user and thepartner user, respectively, the user interest degree C. (user A, user C)can be calculated using the following Expression 29.

C(user A,user C)=(1×1)/1.0+(1×1)/0.83=2.2  (Expression 29)

Provided that users B and A are the input user and the partner user,respectively, similar calculation leads to the user interest degree C.(user B, user A)=0. Furthermore, provided that users C and A are theinput user and the partner user, respectively, similar calculation leadsto the user interest degree C. (user C, user A)=2.2, which is the sameas Expression 29.

As set forth above, in the present Embodiment 2, when a user takes anaction corresponding to a recommended action, the user interest degreeincreases.

Thereafter, the communication level determination unit 51 refers to thepreference similarities between users accumulated in the preferencesimilarity accumulation unit 14, and obtains preference similaritiesbetween the input user and all other users (step S15). Step S15 issimilar to step S4 of Embodiment 1 shown in FIG. 2.

The communication level determination unit 51 then determines acommunication level based on the user interest degrees calculated instep S14 and the preference similarities obtained in step S15 (stepS16). Step S16 is similar to step S5 of Embodiment 1 shown in FIG. 2. Inthe present Embodiment 2 also, after step S16 is executed, thecommunication level determination unit 51 updates the determinedcommunication level as well as the corresponding preference similaritybetween users and the corresponding user interest degree in thecommunication level accumulation unit 13.

Subsequently, the topic recommendation unit 16 executes steps S17 to S20to recommend topics to a user. Steps S17 to S20 are similar to steps S6to S9 of Embodiment 1 shown in FIG. 2. Through the execution of stepsS17 to S20, a degree of preference for each topic is calculated on aper-user basis, topics are narrowed down to topics to be recommended, auser to whom the topics are to be recommended is determined, and theamount of topics is adjusted.

Thereafter, in order to provide a user with topics to be recommended,the output unit 17 outputs the topics to the service providing device 30(step S21). This completes the processing. Step S21 is similar to stepS10 of Embodiment 1 shown in FIG. 2. In step S21, as with step S10, theservice providing device 30 can cause the display of the terminal device20 of the user determined as the recommendation target to display thetopics and the user names of partner users. In the present Embodiment 2also, the output unit 17 can instruct the service providing device 30 torecommend actions and not to display the user names of the partnerusers.

As set forth above, in the present Embodiment 2 also, the operations ofthe communication assistance device 50 allow determining a communicationlevel based on similarities between preference patterns of users andrecords of actions taken by a user toward other users, as inEmbodiment 1. As with the communication assistance device 10, thecommunication assistance device 50 can provide communication assistancein accordance with a communication level. Furthermore, the presentEmbodiment 2 takes into consideration whether or not a user has followedrecommended actions in determining a communication level, and thereforeimproves the accuracy of the determination.

It suffices for a program according to the present Embodiment 2 to causea computer to execute steps S11 to S21 shown in FIG. 13. Thecommunication assistance device 50 and the communication assistancemethod according to the present Embodiment 2 can be realized byinstalling and executing this program on the computer. In this case, acentral processing unit (CPU) of the computer functions as the inputreception unit 12, the communication level determination unit 51, thetopic recommendation unit 16 and the output unit 17 and executesprocessing thereof.

The preference similarity accumulation unit 14 is realized by the CPUand a storage device, such as a hard disk, provided in the computer.Furthermore, the communication level accumulation unit 13, the useraction record accumulation unit 15, the topic accumulation unit 18, theuser model accumulation unit 19 and the recommended action recordaccumulation unit 52 are realized by the storage device.

With reference to FIG. 14, the following describes a computer thatrealizes a communication device by executing the programs according toEmbodiment 1 and Embodiment 2. FIG. 14 is a block diagram showing anexample of a computer that realizes the communication assistance devicesaccording to Embodiment 1 and Embodiment 2 of the present invention.

As shown in FIG. 14, a computer 110 includes a CPU 111, a main memory112, a storage device 113, an input interface 114, a display controller115, a data reader/writer 116, and a communication interface 117. Thesecomponents are connected by a bus 121 in such a manner that they canperform data communication with one another.

The CPU 111 performs various types of arithmetic operations by deployingprograms (codes) of the embodiments stored in the storage device 113 tothe main memory 112 and executing the deployed programs in apredetermined order. The main memory 112 is typically a volatile storagedevice such as a dynamic random-access memory (DRAM). The programs ofthe embodiments are provided while being stored in a computer-readablerecording medium 120. The programs of the embodiments may be distributedover the Internet connected via the communication interface 117.

Specific examples of the storage device 113 include a hard disk and asemiconductor storage device such as a flash memory. The input interface114 mediates data transmission between the CPU 111 and an input device118 such as a keyboard and a mouse. The display controller 115 isconnected to the display device 119 and controls display on the displaydevice 119. The data reader/writer 116 mediates data transmissionbetween the CPU 111 and the recording medium 120. More specifically, thedata reader/writer 116 reads programs from the recording medium 120 andwrites the results of processing executed by the computer 110 to therecording medium 120. The communication interface 117 mediates datatransmission between the CPU 111 and other computers.

Specific examples of the recording medium 120 include a general-purposesemiconductor storage device such as a CompactFlash (CF) and a SecureDigital (SD), a magnetic storage medium such as a flexible disk, and anoptical storage medium such as a Compact Disc read-only memory (CD-ROM).Note that in Embodiment 1 and Embodiment 2, the computer 110 may be aserver computer that constitutes the service providing device 30, or maybe another computer.

A part or all of the above embodiments can be described as, but are notlimited to, the following Notes 1 to 24.

(Note 1)

A communication assistance device including:

a communication level determination unit that determines a level of arelationship between users based on similarity between the users and onuser action records, the similarity between the users being obtainedfrom preference information showing preferences of the users, and theuser action records showing records of actions taken by a certain usertoward a partner user with whom the certain user communicates out of theusers; and

a topic recommendation unit that selects, from among a group of topicsthat have been prepared in advance, a topic that can be transmitted tothe partner user based on the level of the relationship between theusers determined by the communication level determination unit and onpreferences of the certain user and the partner user.

(Note 2)

The communication assistance device according to Note 1, wherein

the communication level determination unit determines whether therelationship between the users is at a stranger level, at anintermediate level between strangers and friends, or at a friend level.

(Note 3)

The communication assistance device according to Note 2, wherein

the intermediate level includes at least one of a stranger level withsimilar preferences and no knowledge of name, at which the certain useris similar to the partner user in preferences but is not interested inthe partner user; and a candidate-for-friend level with similarpreferences, at which the certain user is similar to the partner user inpreferences and is interested in the partner user, and

when determining that the relationship between the users is at theintermediate level, the communication level determination unitdetermines whether the relationship between the users is at the strangerlevel with similar preferences and no knowledge of name or at thecandidate-for-friend level with similar preferences.

(Note 4)

The communication assistance device according to Note 3, wherein

the stranger level with similar preferences and no knowledge of name andthe candidate-for-friend level with similar preferences are eachclassified into: an existence awareness level at which the existence ofthe partner user is acknowledged; and an information exchange level atwhich information is exchanged with the partner user, and

when determining that the relationship between the users is at theintermediate level, the communication level determination unitdetermines whether the relationship between the users is at theexistence awareness level of the stranger level with similar preferencesand no knowledge of name, at the information exchange level of thestranger level with similar preferences and no knowledge of name, at theexistence awareness level of the candidate-for-friend level with similarpreferences, or at the information exchange level of thecandidate-for-friend level with similar preferences.

(Note 5)

The communication assistance device according to any of Notes 1 to 4,wherein

the communication level determination unit

identifies, from the user action records, details of actions that havebeen taken by the certain user toward the partner user and the number oftimes the actions have been taken in a preset time period,

calculates a degree of interest that the certain user takes in thepartner user based on the identified details of the actions and theidentified number of times the actions have been taken, and

judges whether the relationship between the users is in an advancingstate, in a stalled state, or in a receding state based on thesimilarity between the users and the degree of interest taken in thepartner user, and determines the level of the relationship between theusers using a result of the judgment.

(Note 6)

The communication assistance device according to any of Notes 1 to 5,wherein

the communication level determination unit

judges that the relationship between the users is in the advancing statewhen the similarity between the users is equal to or greater than afirst predetermined value set therefor and the degree of interest takenin the partner user is equal to or greater than a first predeterminedvalue set therefor, and

judges that the relationship between the users is in the receding statewhen the similarity between the users is equal to or smaller than asecond predetermined value set therefor or when the degree of interesttaken in the partner user is equal to or smaller than a secondpredetermined value set therefor.

(Note 7)

The communication assistance device according to any of Notes 1 to 6,wherein

the topic recommendation unit

calculates degrees of preference for each topic included among the groupof topics on a per-user basis, and selects, as the topic that can betransmitted to the partner user, a topic for which only the partner userexhibits a degree of preference equal to or greater than a set value, ora topic for which both the certain user and the partner user exhibit adegree of preference equal to or greater than the set value, based onthe level of the relationship between the users determined by thecommunication level determination unit and on the degrees of preferencecalculated on the per-user basis,

determines a recommendation target user to whom the selected topic is tobe recommended out of the certain user and the partner user based oninformation transmissibility of the certain user and the partner user oron contribution that the certain user and the partner user make to eachother, and

further determines the number of topics to be recommended to therecommendation target user in accordance with the level of therelationship between the users.

(Note 8)

The communication assistance device according to any of Notes 1 to 7,wherein

in a case where an external device recommends actions to each user andeach user takes the recommended actions,

the communication level determination unit

identifies, from the user action records, details of actions that havebeen taken by the certain user toward the partner user in a preset timeperiod, the number of times the actions have been taken, details of therecommended actions taken by the certain user, and the number of timesthe recommended actions have been taken,

calculates a degree of interest that the certain user takes in thepartner user based on the identified details of the actions, theidentified number of times the actions have been taken, the identifieddetails of the recommended actions, and the identified number of timesthe recommended actions have been taken, and

judges whether the relationship between the users is in an advancingstate, in a stalled state, or in a receding state based on thesimilarity between the users and the degree of interest taken in thepartner user, and determines the level of the relationship between theusers using a result of the judgment.

(Note 9)

A communication assistance method including:

a communication level determination step of determining a level of arelationship between users based on similarity between the users and onuser action records, the similarity between the users being obtainedfrom preference information showing preferences of the users, and theuser action records showing records of actions taken by a certain usertoward a partner user with whom the certain user communicates out of theusers; and

a topic recommendation step of selecting, from among a group of topicsthat have been prepared in advance, a topic that can be transmitted tothe partner user based on the level of the relationship between theusers determined in the communication level determination step and onpreferences of the certain user and the partner user.

(Note 10)

The communication assistance method according to Note 9, wherein

the communication level determination step determines whether therelationship between the users is at a stranger level, at anintermediate level between strangers and friends, or at a friend level.

(Note 11)

The communication assistance method according to Note 10, wherein

the intermediate level includes at least one of a stranger level withsimilar preferences and no knowledge of name, at which the certain useris similar to the partner user in preferences but is not interested inthe partner user; and a candidate-for-friend level with similarpreferences, at which the certain user is similar to the partner user inpreferences and is interested in the partner user, and

when determining that the relationship between the users is at theintermediate level, the communication level determination stepdetermines whether the relationship between the users is at the strangerlevel with similar preferences and no knowledge of name or at thecandidate-for-friend level with similar preferences.

(Note 12)

The communication assistance method according to Note 11, wherein

the stranger level with similar preferences and no knowledge of name andthe candidate-for-friend level with similar preferences are eachclassified into: an existence awareness level at which the existence ofthe partner user is acknowledged; and an information exchange level atwhich information is exchanged with the partner user, and

when determining that the relationship between the users is at theintermediate level, the communication level determination stepdetermines whether the relationship between the users is at theexistence awareness level of the stranger level with similar preferencesand no knowledge of name, at the information exchange level of thestranger level with similar preferences and no knowledge of name, at theexistence awareness level of the candidate-for-friend level with similarpreferences, or at the information exchange level of thecandidate-for-friend level with similar preferences.

(Note 13)

The communication assistance method according to any of Notes 9 to 12,wherein

the communication level determination step

identifies, from the user action records, details of actions that havebeen taken by the certain user toward the partner user and the number oftimes the actions have been taken in a preset time period,

calculates a degree of interest that the certain user takes in thepartner user based on the identified details of the actions and theidentified number of times the actions have been taken, and

judges whether the relationship between the users is in an advancingstate, in a stalled state, or in a receding state based on thesimilarity between the users and the degree of interest taken in thepartner user, and determines the level of the relationship between theusers using a result of the judgment.

(Note 14)

The communication assistance method according to any of Notes 9 to 13,wherein

the communication level determination step

judges that the relationship between the users is in the advancing statewhen the similarity between the users is equal to or greater than afirst predetermined value set therefor and the degree of interest takenin the partner user is equal to or greater than a first predeterminedvalue set therefor, and

judges that the relationship between the users is in the receding statewhen the similarity between the users is equal to or smaller than asecond predetermined value set therefor or when the degree of interesttaken in the partner user is equal to or smaller than a secondpredetermined value set therefor.

(Note 15)

The communication assistance method according to any of Notes 9 to 14,wherein

the topic recommendation step

calculates degrees of preference for each topic included among the groupof topics on a per-user basis, and selects, as the topic that can betransmitted to the partner user, a topic for which only the partner userexhibits a degree of preference equal to or greater than a set value, ora topic for which both the certain user and the partner user exhibit adegree of preference equal to or greater than the set value, based onthe level of the relationship between the users determined by thecommunication level determination unit and on the degrees of preferencecalculated on the per-user basis,

determines a recommendation target user to whom the selected topic is tobe recommended out of the certain user and the partner user based oninformation transmissibility of the certain user and the partner user oron contribution that the certain user and the partner user make to eachother, and

further determines the number of topics to be recommended to therecommendation target user in accordance with the level of therelationship between the users.

(Note 16)

The communication assistance method according to any of Notes 9 to 15,wherein

in a case where an external device recommends actions to each user andeach user takes the recommended actions,

the communication level determination step

identifies, from the user action records, details of actions that havebeen taken by the certain user toward the partner user in a preset timeperiod, the number of times the actions have been taken, details of therecommended actions taken by the certain user, and the number of timesthe recommended actions have been taken,

calculates a degree of interest that the certain user takes in thepartner user based on the identified details of the actions, theidentified number of times the actions have been taken, the identifieddetails of the recommended actions, and the identified number of timesthe recommended actions have been taken, and

judges whether the relationship between the users is in an advancingstate, in a stalled state, or in a receding state based on thesimilarity between the users and the degree of interest taken in thepartner user, and determines the level of the relationship between theusers using a result of the judgment.

(Note 17)

A computer-readable recording medium having recorded therein a programincluding instructions for causing a computer to execute:

a communication level determination step of determining a level of arelationship between users based on similarity between the users and onuser action records, the similarity between the users being obtainedfrom preference information showing preferences of the users, and theuser action records showing records of actions taken by a certain usertoward a partner user with whom the certain user communicates out of theusers; and

a topic recommendation step of selecting, from among a group of topicsthat have been prepared in advance, a topic that can be transmitted tothe partner user based on the level of the relationship between theusers determined in the communication level determination step and onpreferences of the certain user and the partner user.

(Note 18)

The computer-readable recording medium according to Note 17, wherein

the communication level determination step determines whether therelationship between the users is at a stranger level, at anintermediate level between strangers and friends, or at a friend level.

(Note 19)

The computer-readable recording medium according to Note 18, wherein

the intermediate level includes at least one of a stranger level withsimilar preferences and no knowledge of name, at which the certain useris similar to the partner user in preferences but is not interested inthe partner user; and a candidate-for-friend level with similarpreferences, at which the certain user is similar to the partner user inpreferences and is interested in the partner user, and

when determining that the relationship between the users is at theintermediate level, the communication level determination stepdetermines whether the relationship between the users is at the strangerlevel with similar preferences and no knowledge of name or at thecandidate-for-friend level with similar preferences.

(Note 20)

The computer-readable recording medium according to Note 19, wherein

the stranger level with similar preferences and no knowledge of name andthe candidate-for-friend level with similar preferences are eachclassified into: an existence awareness level at which the existence ofthe partner user is acknowledged; and an information exchange level atwhich information is exchanged with the partner user, and

when determining that the relationship between the users is at theintermediate level, the communication level determination stepdetermines whether the relationship between the users is at theexistence awareness level of the stranger level with similar preferencesand no knowledge of name, at the information exchange level of thestranger level with similar preferences and no knowledge of name, at theexistence awareness level of the candidate-for-friend level with similarpreferences, or at the information exchange level of thecandidate-for-friend level with similar preferences.

(Note 21)

The computer-readable recording medium according to any of Notes 17 to20, wherein

the communication level determination step

identifies, from the user action records, details of actions that havebeen taken by the certain user toward the partner user and the number oftimes the actions have been taken in a preset time period,

calculates a degree of interest that the certain user takes in thepartner user based on the identified details of the actions and theidentified number of times the actions have been taken, and

judges whether the relationship between the users is in an advancingstate, in a stalled state, or in a receding state based on thesimilarity between the users and the degree of interest taken in thepartner user, and determines the level of the relationship between theusers using a result of the judgment.

(Note 22)

The computer-readable recording medium according to any of Notes 17 to21, wherein

the communication level determination step

judges that the relationship between the users is in the advancing statewhen the similarity between the users is equal to or greater than afirst predetermined value set therefor and the degree of interest takenin the partner user is equal to or greater than a first predeterminedvalue set therefor, and

judges that the relationship between the users is in the receding statewhen the similarity between the users is equal to or smaller than asecond predetermined value set therefor or when the degree of interesttaken in the partner user is equal to or smaller than a secondpredetermined value set therefor.

(Note 23)

The computer-readable recording medium according to any of Notes 17 to22, wherein

the topic recommendation step

calculates degrees of preference for each topic included among the groupof topics on a per-user basis, and selects, as the topic that can betransmitted to the partner user, a topic for which only the partner userexhibits a degree of preference equal to or greater than a set value, ora topic for which both the certain user and the partner user exhibit adegree of preference equal to or greater than the set value, based onthe level of the relationship between the users determined by thecommunication level determination unit and on the degrees of preferencecalculated on the per-user basis,

determines a recommendation target user to whom the selected topic is tobe recommended out of the certain user and the partner user based oninformation transmissibility of the certain user and the partner user oron contribution that the certain user and the partner user make to eachother, and

further determines the number of topics to be recommended to therecommendation target user in accordance with the level of therelationship between the users.

(Note 24)

The computer-readable recording medium according to any of Notes 17 to23, wherein

in a case where an external device recommends actions to each user andeach user takes the recommended actions,

the communication level determination step

identifies, from the user action records, details of actions that havebeen taken by the certain user toward the partner user in a preset timeperiod, the number of times the actions have been taken, details of therecommended actions taken by the certain user, and the number of timesthe recommended actions have been taken,

calculates a degree of interest that the certain user takes in thepartner user based on the identified details of the actions, theidentified number of times the actions have been taken, the identifieddetails of the recommended actions, and the identified number of timesthe recommended actions have been taken, and

judges whether the relationship between the users is in an advancingstate, in a stalled state, or in a receding state based on thesimilarity between the users and the degree of interest taken in thepartner user, and determines the level of the relationship between theusers using a result of the judgment.

Although the invention of the present application has been describedusing the above embodiments, the invention of the present application isby no means limited to the above embodiments. The configurations anddetails of the invention of the present application may be subjected tovarious changes that can be understood by a person skilled in the artwithin a scope of the invention of the present application.

The present application claims the benefit of priority from JapanesePatent Application No. 2010-177375, filed Aug. 6, 2010, the disclosureof which is incorporated herein by reference in its entirety.

INDUSTRIAL APPLICABILITY

As set forth above, the present invention allows determining a level ofa relationship between users who communicate with each other. Therefore,the present invention can be applied to, for example, a conversationassistance device that recommends a conversation partner, and a programfor realizing the conversation assistance device using a computer.

REFERENCE SIGNS LIST

-   10 COMMUNICATION ASSISTANCE DEVICE (EMBODIMENT 1)-   11 COMMUNICATION LEVEL DETERMINATION UNIT-   12 INPUT RECEPTION UNIT-   13 COMMUNICATION LEVEL ACCUMULATION UNIT-   14 PREFERENCE SIMILARITY ACCUMULATION UNIT-   15 USER ACTION RECORD ACCUMULATION UNIT-   16 TOPIC RECOMMENDATION UNIT-   17 OUTPUT UNIT-   18 TOPIC ACCUMULATION UNIT-   19 USER MODEL ACCUMULATION UNIT-   20 TERMINAL DEVICE-   30 SERVICE PROVIDING DEVICE-   40 NETWORK-   50 COMMUNICATION ASSISTANCE DEVICE (EMBODIMENT 2)-   51 COMMUNICATION LEVEL DETERMINATION UNIT (EMBODIMENT 2)-   52 RECOMMENDED ACTION RECORD ACCUMULATION UNIT-   110 COMPUTER-   111 CPU-   112 MAIN MEMORY-   113 STORAGE DEVICE-   114 INPUT INTERFACE-   115 DISPLAY CONTROLLER-   116 DATA READER/WRITER-   117 COMMUNICATION INTERFACE-   118 INPUT DEVICE-   119 DISPLAY DEVICE-   120 RECORDING MEDIUM-   121 BUS

What is claimed is:
 1. A communication assistance device comprising: acommunication level determination unit that determines a level of arelationship between users based on similarity between the users and onuser action records, the similarity between the users being obtainedfrom preference information showing preferences of the users, and theuser action records showing records of actions taken by a certain usertoward a partner user with whom the certain user communicates out of theusers; and a topic recommendation unit that selects, from among a groupof topics that have been prepared in advance, a topic that can betransmitted to the partner user based on the level of the relationshipbetween the users determined by the communication level determinationunit and on preferences of the certain user and the partner user.
 2. Thecommunication assistance device according to claim 1, wherein thecommunication level determination unit determines whether therelationship between the users is at a stranger level, at anintermediate level between strangers and friends, or at a friend level.3. The communication assistance device according to claim 2, wherein theintermediate level includes at least one of: a stranger level withsimilar preferences and no knowledge of name, at which the certain useris similar to the partner user in preferences but is not interested inthe partner user; and a candidate-for-friend level with similarpreferences, at which the certain user is similar to the partner user inpreferences and is interested in the partner user, and when determiningthat the relationship between the users is at the intermediate level,the communication level determination unit determines whether therelationship between the users is at the stranger level with similarpreferences and no knowledge of name or at the candidate-for-friendlevel with similar preferences.
 4. The communication assistance deviceaccording to claim 3, wherein the stranger level with similarpreferences and no knowledge of name and the candidate-for-friend levelwith similar preferences are each classified into: an existenceawareness level at which the existence of the partner user isacknowledged; and an information exchange level at which information isexchanged with the partner user, and when determining that therelationship between the users is at the intermediate level, thecommunication level determination unit determines whether therelationship between the users is at the existence awareness level ofthe stranger level with similar preferences and no knowledge of name, atthe information exchange level of the stranger level with similarpreferences and no knowledge of name, at the existence awareness levelof the candidate-for-friend level with similar preferences, or at theinformation exchange level of the candidate-for-friend level withsimilar preferences.
 5. The communication assistance device according toclaim 1, wherein the communication level determination unit identifies,from the user action records, details of actions that have been taken bythe certain user toward the partner user and the number of times theactions have been taken in a preset time period, calculates a degree ofinterest that the certain user takes in the partner user based on theidentified details of the actions and the identified number of times theactions have been taken, and judges whether the relationship between theusers is in an advancing state, in a stalled state, or in a recedingstate based on the similarity between the users and the degree ofinterest taken in the partner user, and determines the level of therelationship between the users using a result of the judgment.
 6. Thecommunication assistance device according to claim 1, wherein thecommunication level determination unit judges that the relationshipbetween the users is in the advancing state when the similarity betweenthe users is equal to or greater than a first predetermined value settherefor and the degree of interest taken in the partner user is equalto or greater than a first predetermined value set therefor, and judgesthat the relationship between the users is in the receding state whenthe similarity between the users is equal to or smaller than a secondpredetermined value set therefor or when the degree of interest taken inthe partner user is equal to or smaller than a second predeterminedvalue set therefor.
 7. The communication assistance device according toclaim 1, wherein the topic recommendation unit calculates degrees ofpreference for each topic included among the group of topics on aper-user basis, selects, as the topic that can be transmitted to thepartner user, a topic for which only the partner user exhibits a degreeof preference equal to or greater than a set value, or a topic for whichboth the certain user and the partner user exhibit a degree ofpreference equal to or greater than the set value, based on the level ofthe relationship between the users determined by the communication leveldetermination unit and on the degrees of preference calculated on theper-user basis, determines a recommendation target user to whom theselected topic is to be recommended out of the certain user and thepartner user based on information transmissibility of the certain userand the partner user or on contribution that the certain user and thepartner user make to each other, and further determines the number oftopics to be recommended to the recommendation target user in accordancewith the level of the relationship between the users.
 8. Thecommunication assistance device according to claim 1, wherein in a casewhere an external device recommends actions to each user and each usertakes the recommended actions, the communication level determinationunit identifies, from the user action records, details of actions thathave been taken by the certain user toward the partner user in a presettime period, the number of times the actions have been taken, details ofthe recommended actions taken by the certain user, and the number oftimes the recommended actions have been taken, calculates a degree ofinterest that the certain user takes in the partner user based on theidentified details of the actions, the identified number of times theactions have been taken, the identified details of the recommendedactions, and the identified number of times the recommended actions havebeen taken, and judges whether the relationship between the users is inan advancing state, in a stalled state, or in a receding state based onthe similarity between the users and the degree of interest taken in thepartner user, and determines the level of the relationship between theusers using a result of the judgment.
 9. A communication assistancemethod comprising: a communication level determination step ofdetermining a level of a relationship between users based on similaritybetween the users and on user action records, the similarity between theusers being obtained from preference information showing preferences ofthe users, and the user action records showing records of actions takenby a certain user toward a partner user with whom the certain usercommunicates out of the users; and a topic recommendation step ofselecting, from among a group of topics that have been prepared inadvance, a topic that can be transmitted to the partner user based onthe level of the relationship between the users determined in thecommunication level determination step and on preferences of the certainuser and the partner user.
 10. The communication assistance methodaccording to claim 9, wherein the communication level determination stepdetermines whether the relationship between the users is at a strangerlevel, at an intermediate level between strangers and friends, or at afriend level.
 11. The communication assistance method according to claim10, wherein the intermediate level includes at least one of: a strangerlevel with similar preferences and no knowledge of name, at which thecertain user is similar to the partner user in preferences but is notinterested in the partner user; and a candidate-for-friend level withsimilar preferences, at which the certain user is similar to the partneruser in preferences and is interested in the partner user, and whendetermining that the relationship between the users is at theintermediate level, the communication level determination stepdetermines whether the relationship between the users is at the strangerlevel with similar preferences and no knowledge of name or at thecandidate-for-friend level with similar preferences.
 12. Thecommunication assistance method according to claim 11, wherein thestranger level with similar preferences and no knowledge of name and thecandidate-for-friend level with similar preferences are each classifiedinto: an existence awareness level at which the existence of the partneruser is acknowledged; and an information exchange level at whichinformation is exchanged with the partner user, and when determiningthat the relationship between the users is at the intermediate level,the communication level determination step determines whether therelationship between the users is at the existence awareness level ofthe stranger level with similar preferences and no knowledge of name, atthe information exchange level of the stranger level with similarpreferences and no knowledge of name, at the existence awareness levelof the candidate-for-friend level with similar preferences, or at theinformation exchange level of the candidate-for-friend level withsimilar preferences.
 13. The communication assistance method accordingto claim 9, wherein the communication level determination stepidentifies, from the user action records, details of actions that havebeen taken by the certain user toward the partner user and the number oftimes the actions have been taken in a preset time period, calculates adegree of interest that the certain user takes in the partner user basedon the identified details of the actions and the identified number oftimes the actions have been taken, and judges whether the relationshipbetween the users is in an advancing state, in a stalled state, or in areceding state based on the similarity between the users and the degreeof interest taken in the partner user, and determines the level of therelationship between the users using a result of the judgment.
 14. Thecommunication assistance method according to claim 9, wherein thecommunication level determination step judges that the relationshipbetween the users is in the advancing state when the similarity betweenthe users is equal to or greater than a first predetermined value settherefor and the degree of interest taken in the partner user is equalto or greater than a first predetermined value set therefor, and judgesthat the relationship between the users is in the receding state whenthe similarity between the users is equal to or smaller than a secondpredetermined value set therefor or when the degree of interest taken inthe partner user is equal to or smaller than a second predeterminedvalue set therefor.
 15. The communication assistance method according toclaim 9, wherein the topic recommendation step calculates degrees ofpreference for each topic included among the group of topics on aper-user basis, and selects, as the topic that can be transmitted to thepartner user, a topic for which only the partner user exhibits a degreeof preference equal to or greater than a set value, or a topic for whichboth the certain user and the partner user exhibit a degree ofpreference equal to or greater than the set value, based on the level ofthe relationship between the users determined by the communication leveldetermination step and on the degrees of preference calculated on theper-user basis, determines a recommendation target user to whom theselected topic is to be recommended out of the certain user and thepartner user based on information transmissibility of the certain userand the partner user or on contribution that the certain user and thepartner user make to each other, and further determines the number oftopics to be recommended to the recommendation target user in accordancewith the level of the relationship between the users.
 16. Thecommunication assistance method according to claim 9, wherein in a casewhere an external device recommends actions to each user and each usertakes the recommended actions, the communication level determinationstep identifies, from the user action records, details of actions thathave been taken by the certain user toward the partner user in a presettime period, the number of times the actions have been taken, details ofthe recommended actions taken by the certain user, and the number oftimes the recommended actions have been taken, calculates a degree ofinterest that the certain user takes in the partner user based on theidentified details of the actions, the identified number of times theactions have been taken, the identified details of the recommendedactions, and the identified number of times the recommended actions havebeen taken, and judges whether the relationship between the users is inan advancing state, in a stalled state, or in a receding state based onthe similarity between the users and the degree of interest taken in thepartner user, and determines the level of the relationship between theusers using a result of the judgment.
 17. A computer-readable recordingmedium having recorded therein a program including instructions forcausing a computer to execute: a communication level determination stepof determining a level of a relationship between users based onsimilarity between the users and on user action records, the similaritybetween the users being obtained from preference information showingpreferences of the users, and the user action records showing records ofactions taken by a certain user toward a partner user with whom thecertain user communicates out of the users; and a topic recommendationstep of selecting, from among a group of topics that have been preparedin advance, a topic that can be transmitted to the partner user based onthe level of the relationship between the users determined in thecommunication level determination step and on preferences of the certainuser and the partner user.
 18. The computer-readable recording mediumaccording to claim 17, wherein the communication level determinationstep determines whether the relationship between the users is at astranger level, at an intermediate level between strangers and friends,or at a friend level.
 19. The computer-readable recording mediumaccording to claim 18, wherein the intermediate level includes at leastone of: a stranger level with similar preferences and no knowledge ofname, at which the certain user is similar to the partner user inpreferences but is not interested in the partner user; and acandidate-for-friend level with similar preferences, at which thecertain user is similar to the partner user in preferences and isinterested in the partner user, and when determining that therelationship between the users is at the intermediate level, thecommunication level determination step determines whether therelationship between the users is at the stranger level with similarpreferences and no knowledge of name or at the candidate-for-friendlevel with similar preferences.
 20. The computer-readable recordingmedium according to claim 19, wherein the stranger level with similarpreferences and no knowledge of name and the candidate-for-friend levelwith similar preferences are each classified into: an existenceawareness level at which the existence of the partner user isacknowledged; and an information exchange level at which information isexchanged with the partner user, and when determining that therelationship between the users is at the intermediate level, thecommunication level determination step determines whether therelationship between the users is at the existence awareness level ofthe stranger level with similar preferences and no knowledge of name, atthe information exchange level of the stranger level with similarpreferences and no knowledge of name, at the existence awareness levelof the candidate-for-friend level with similar preferences, or at theinformation exchange level of the candidate-for-friend level withsimilar preferences.
 21. The computer-readable recording mediumaccording to claim 17, wherein the communication level determinationstep identifies, from the user action records, details of actions thathave been taken by the certain user toward the partner user and thenumber of times the actions have been taken in a preset time period,calculates a degree of interest that the certain user takes in thepartner user based on the identified details of the actions and theidentified number of times the actions have been taken, and judgeswhether the relationship between the users is in an advancing state, ina stalled state, or in a receding state based on the similarity betweenthe users and the degree of interest taken in the partner user, anddetermines the level of the relationship between the users using aresult of the judgment.
 22. The computer-readable recording mediumaccording to claim 17, wherein the communication level determinationstep judges that the relationship between the users is in the advancingstate when the similarity between the users is equal to or greater thana first predetermined value set therefor and the degree of interesttaken in the partner user is equal to or greater than a firstpredetermined value set therefor, and judges that the relationshipbetween the users is in the receding state when the similarity betweenthe users is equal to or smaller than a second predetermined value settherefor or when the degree of interest taken in the partner user isequal to or smaller than a second predetermined value set therefor. 23.The computer-readable recording medium according to claim 17, whereinthe topic recommendation step calculates degrees of preference for eachtopic included among the group of topics on a per-user basis, andselects, as the topic that can be transmitted to the partner user, atopic for which only the partner user exhibits a degree of preferenceequal to or greater than a set value, or a topic for which both thecertain user and the partner user exhibit a degree of preference equalto or greater than the set value, based on the level of the relationshipbetween the users determined by the communication level determinationstep and on the degrees of preference calculated on the per-user basis,determines a recommendation target user to whom the selected topic is tobe recommended out of the certain user and the partner user based oninformation transmissibility of the certain user and the partner user oron contribution that the certain user and the partner user make to eachother, and further determines the number of topics to be recommended tothe recommendation target user in accordance with the level of therelationship between the users.
 24. The computer-readable recordingmedium according to claim 17, wherein in a case where an external devicerecommends actions to each user and each user takes the recommendedactions, the communication level determination step identifies, from theuser action records, details of actions that have been taken by thecertain user toward the partner user in a preset time period, the numberof times the actions have been taken, details of the recommended actionstaken by the certain user, and the number of times the recommendedactions have been taken, calculates a degree of interest that thecertain user takes in the partner user based on the identified detailsof the actions, the identified number of times the actions have beentaken, the identified details of the recommended actions, and theidentified number of times the recommended actions have been taken, andjudges whether the relationship between the users is in an advancingstate, in a stalled state, or in a receding state based on thesimilarity between the users and the degree of interest taken in thepartner user, and determines the level of the relationship between theusers using a result of the judgment.